package com.ruoyi.system.domain;

import com.ruoyi.system.domain.upe.OAttribute;
import com.ruoyi.system.domain.upe.SAttribute;
import com.ruoyi.system.domain.upe.State;
import com.ruoyi.system.domain.upe.Transition;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.Hashtable;

/**
 * 流程模型对象 tb_upe_model
 * 
 * @author gxt
 * @date 2024-08-23
 */
public class TbUpeModel extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    private String wfid;

    private String wfname;

    private String wftag;

    private String wfdesc;

    private String createuserid;

    private String createtime;

    // 以下为解析后的数据
    // 流程模板版本
    public String version;
    // 流程模板描述
    public String description;

    // 流程模板图片文件名
    public String image_file;

    // 基本显示模板
    public String base_show;

    // 基本提交模板
    public String base_submit;

    // 流程模板使用的属性定义
    public Hashtable<String, SAttribute> source_attributes;

    // 默认显示对话框定义
    public Hashtable<String, OAttribute> opt_attributes;

    // 状态定义
    public Hashtable<String, State> states;

    // 状态迁移定义
    public Hashtable<String, Transition> transitions;


    public void setWfid(String wfid) 
    {
        this.wfid = wfid;
    }

    public String getWfid() 
    {
        return wfid;
    }
    public void setWfname(String wfname) 
    {
        this.wfname = wfname;
    }

    public String getWfname() 
    {
        return wfname;
    }
    public void setWftag(String wftag) 
    {
        this.wftag = wftag;
    }

    public String getWftag() 
    {
        return wftag;
    }
    public void setWfdesc(String wfdesc) 
    {
        this.wfdesc = wfdesc;
    }

    public String getWfdesc() 
    {
        return wfdesc;
    }
    public void setCreateuserid(String createuserid) 
    {
        this.createuserid = createuserid;
    }

    public String getCreateuserid() 
    {
        return createuserid;
    }

    public String getCreatetime() {
        return createtime;
    }

    public void setCreatetime(String createtime) {
        this.createtime = createtime;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getImage_file() {
        return image_file;
    }

    public void setImage_file(String image_file) {
        this.image_file = image_file;
    }

    public String getBase_show() {
        return base_show;
    }

    public void setBase_show(String base_show) {
        this.base_show = base_show;
    }

    public String getBase_submit() {
        return base_submit;
    }

    public void setBase_submit(String base_submit) {
        this.base_submit = base_submit;
    }

    public Hashtable<String, SAttribute> getSource_attributes() {
        return source_attributes;
    }

    public void setSource_attributes(Hashtable<String, SAttribute> source_attributes) {
        this.source_attributes = source_attributes;
    }

    public Hashtable<String, OAttribute> getOpt_attributes() {
        return opt_attributes;
    }

    public void setOpt_attributes(Hashtable<String, OAttribute> opt_attributes) {
        this.opt_attributes = opt_attributes;
    }

    public Hashtable<String, State> getStates() {
        return states;
    }

    public void setStates(Hashtable<String, State> states) {
        this.states = states;
    }

    public Hashtable<String, Transition> getTransitions() {
        return transitions;
    }

    public void setTransitions(Hashtable<String, Transition> transitions) {
        this.transitions = transitions;
    }

    public String getVersion() {
        return version;
    }

    public void setVersion(String version) {
        this.version = version;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("wfid", getWfid())
            .append("wfname", getWfname())
            .append("wftag", getWftag())
            .append("wfdesc", getWfdesc())
            .append("createuserid", getCreateuserid())
            .append("createtime", getCreatetime())
            .append("remark", getRemark())
            .toString();
    }
}
